The present invention relates to audio coding and in particular to audio coding based on LPC-like processing in the context of codebooks.
Perceptual audio coders often utilize linear predictive coding (LPC) in order to model the human vocal tract and in order to reduce the amount of redundancy, which can be modeled by the LPC parameters. The LPC residual, which is obtained by filtering the input signal with the LPC filter, is further modeled and transmitted by representing it by one, two or more codebooks (examples are: adaptive codebook, glottal pulse codebook, innovative codebook, transition codebook, hybrid codebooks consisting of predictive and transform parts).
In case of a frame loss, a segment of speech/audio data (typically 10 ms or 20 ms) is lost. To make this loss as less audible as possible, various concealment techniques are applied. These techniques usually consist of extrapolation of the past, received data. This data may be: gains of codebooks, codebook vectors, parameters for modeling the codebooks and LPC coefficients. In all concealment technology known from state-of-the-art, the set of LPC coefficients, which is used for the signal synthesis, is either repeated (based on the last good set) or is extra-/interpolated.
ITU G.718 [1]: The LPC parameters (represented in the ISF domain) are extrapolated during concealment. The extrapolation consists of two steps. First, a long term target ISF vector is calculated. This long term target ISF vector is a weighted mean (with the fixed weighting factorbeta) of                an ISF vector representing the average of the last three known ISF vectors, and        an offline trained ISF vector, which represents a long-term average spectral shape.        
This long term target ISF vector is then interpolated with the last correctly received ISF vector once per frame using a time-varying factor alpha to allow a cross-fade from the last received ISF vector to the long term target ISF vector. The resulting ISF vector is subsequently converted back to the LPC domain, in order to generate intermediate steps (ISFs are transmitted every 20 ms, interpolation generates a set of LPCs every 5 ms). The LPCs are then used to synthesize the output signal by filtering the result of the sum of the adaptive and the fixed codebook, which are amplified with the corresponding codebook gains before addition. The fixed codebook contains noise during concealment. In case of consecutive frame loss, the adaptive codebook is fed back without adding the fixed codebook. Alternatively, the sum signal might be fed back, as done in AMR-WB [5].
In [2], a concealment scheme is described which utilizes two sets of LPC coefficients. One set of LPC coefficients is derived based on the last good received frame, the other set of LPC parameters is derived based on the first good received frame, but it is assumed that the signal evolves in reverse direction (towards the past). Then prediction is performed in two directions, one towards the future and one towards the past. Therefore, two representations of the missing frame are generated. Finally, both signals are weighted and averaged before being played out.
FIG. 8 shows an error concealment processing in accordance with conventional technology.
An adaptive codebook 800 provides an adaptive codebook information to an amplifier 808 which applies a codebook gain gp to the information from the adaptive codebook 800. The output of the amplifier 808 is connected to an input of a combiner 810. Furthermore, a random noise generator 804 together with a fixed codebook 802 provides codebook information to a further amplifier gc. The amplifier gc indicated at 806 applies the gain factor gc, which is the fixed codebook gain, to the information provided by the fixed codebook 802 together with the random noise generator 804. The output of the amplifier 806 is then additionally input into the combiner 810. The combiner 810 adds the result of both codebooks amplified by the corresponding codebook gains to obtain a combination signal which is then input into an LPC synthesis block 814. The LPC synthesis block 814 is controlled by replacement representation which is generated as discussed before.
This conventional procedure has certain drawbacks.
In order to cope with changing signal characteristics or in order to converge the LPC envelope towards background noise like-properties, the LPC is changed during concealment by extra/interpolation with some other LPC vectors. There is no possibility to precisely control the energy during concealment. While there is the chance to control the codebook gains of the various codebooks, the LPC will implicitly influence the overall level or energy (even frequency dependent).
It might be envisioned to fade out to a distinct energy level (e.g. background noise level) during burst frame loss. This is not possible with state-of-the-art technology, even by controlling the codebook gains.
It is not possible to fade the noisy parts of the signal to background noise, while maintaining the possibility to synthesize tonal parts with the same spectral property as before the frame loss.